// 第一题
// 判断下面代码输出
var length = 1;
function foo() {
    console.log(this.length);
}
var arr2 = [foo, 2, 3, 4];
arr2[0]();// 输出数组arr2的lenhth值 => 4

var f1 = arr2[0];
f1(); // 输出window下面的length ===》 1         

// 第二题
// 判断下面代码输出
var length = 1;
function fn() {
    console.log(this.length);
}
var obj = {
    length: 100,
    action: function (callback) { 
        // 输出1
        callback();// 1
        // 输出2
        arguments[0]();// 5
        // 输出3
        var foo = arguments[0];
        foo();// 1
        // 输出4
        this.foo2 = arguments[0];
        this.foo2();// 100
     }
}

var  arr1 = [1, 2, 3, 4];
obj.action(fn, ...arr1);